#ifndef RSIM_MASSPROPERTIES_H
#define RSIM_MASSPROPERTIES_H

/* -------------------------------------------------------------------------- *
 * File: MassProperties.h                                                     *
 * Authors: Kishor Bhalerao                                                   *
 * Email : kishor8dm@gmail.com                                                *
 * Contributors:                                                              *
 * Email:                                                                     *
 * copyright (c) 2010 Authors.                                                *
 *                                                                            *
 * This program is free software: you can redistribute it and/or modify it    *
 * under the terms of the GNU General Public License as published by the Free *
 * Software Foundation, either version 3 of the License, or any later version.*
 *                                                                            *
 * This program is distributed in the hope that it will be useful, but        *
 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY *
 * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License   *
 * for more details. (http://www.gnu.org/licenses/)                           *
 * -------------------------------------------------------------------------- */

#include "Mat3x3.h"
#include "LinAlgDecl.h"

namespace RSIM{

class MassProperties{
	public:
		double Mass_;
		Mat3x3 Inertia_;
		
		/** Default constuctor, mass = 1, Inertia = I(3x3) */
		MassProperties();				
		
		/** Deep copy */
		MassProperties(const MassProperties& MP);
		
		/** Manually set mass properties */
		MassProperties(const double Mass, const Mat3x3& Inertia);
		
		/** Print MassProperties*/
		friend std::ostream& operator<<(ostream& func, const MassProperties& M);
		
}; // class Massproperties

}// namespace RSIM

#endif